<template>
    <div>
        <div class="banner" @click="handleBannerClick">
            <img class="banner-img" :src="bannerImg" />
            <div class="banner-info">
                <div class="banner-tittle">
                    {{this.sightName}}
                </div>
                <div class="banner-number">
                    <span class="iconfont banner-icon">&#xe692;</span>
                    {{this.bannerImgs.length}}
                </div>
            </div>
        </div>
        <common-gallary :imgs="bannerImgs" @close="handleGallaryClose" v-show="showGallary"></common-gallary>
    </div>
</template>

<script>
import CommonGallary from "common/gallary/Gallary";
export default {
  props: {
    sightName: {
      type: String,
      default: ""
    },
    bannerImg: {
      type: String,
      default: ""
    },
    bannerImgs: {
      type: Array,
      default: []
    }
  },
  data() {
    return {
      showGallary: false
    };
  },
  methods: {
    handleGallaryClose() {
      this.showGallary = false;
    },
    handleBannerClick() {
      this.showGallary = true;
    }
  },
  components: {
    CommonGallary
  }
};
</script>

<style scoped lang="stylus" rel="stylesheet/stylus">
.banner {
    position: relative;
    overflow: hidden;
    height: 0;
    padding-bottom: 55%;

    .banner-img {
        width: 100%;
    }

    .banner-info {
        display: flex;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        line-height: 0.6rem;
        color: #fff;
        background-image: linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.8));

        .banner-tittle {
            flex: 1;
            font-size: 0.32rem;
            padding: 0 0.2rem;
        }

        .banner-number {
            height: 0.32rem;
            line-height: 0.32rem;
            margin-top: 0.14rem;
            padding: 0 0.4rem;
            border-radius: 0.2rem;
            background: rgba(0, 0, 0, 0.8);
            font-size: 0.24rem;

            .banner-icon {
                font-size: 0.24rem;
            }
        }
    }
}
</style>
